layui.config({
    base: 'assets/layuiadmin/' //静态资源所在路径
}).extend({
    index: 'lib/index', //主入口模块
}).use(['index', 'table', 'laytpl'], function(){
    var $ = layui.$,
        table = layui.table;

    table.render({
        id: 'data-table',
        elem: '#data-table',
        url: 'wallet/coin/statisticList',
        where: getData(),
        toolbar: '#data-table-toolbar',
        title: '金币统计列表',
        height: globalHeight,
        page: true,
        cols: [[
            {field: 'userId', title: '用户id', align: 'center'},
            {field: 'todayRechargeAmount', title: '今日充值金额', align: 'center', sort: true},
            {field: 'todayConsume', title: '今日消费', align: 'center', sort: true},
            {field: 'activeCoin', title: '可用金币', align: 'center', sort: true},
            {field: 'totalCoin', title: '累计总金币', align: 'center', sort: true},
            {field: 'totalRechargeAmount', title: '总充值金额', align: 'center', sort: true},
            {field: 'op', title: '操作', align: 'center', templet: '#data-table-bar'}
        ]],
        initSort: { //默认排序
            field: 'todayRechargeAmount',
            type: 'desc'
        },
        parseData: function(result){
            return {
                "code": result.code, //解析接口状态
                "msg": result.msg, //解析提示文本
                "count": result.data.total, //解析数据长度
                "data": result.data.coinStatisticsList //解析数据列表
            };
        }
    });

    //头工具栏事件
    table.on('toolbar(data-table)', function(obj){
        switch(obj.event){
            case 'search':
                var data =  getData();
                table.reload('data-table', {
                    url: 'wallet/coin/statisticList',
                    where: data,
                    page: {
                        curr: 1
                    }
                });
                reloadData(data);
                break;
        };
    });

    //监听排序事件
    table.on('sort(data-table)', function(obj){
        var field = obj.field;  //当前排序的字段名
        var sort = obj.type;    //当前排序类型：desc（降序）、asc（升序）、null（空对象，默认排序）

        var data = getData();
        data.field = field;
        data.sort = sort;

        table.reload('data-table', {
            initSort: obj, //记录初始排序，如果不设的话，将无法标记表头的排序状态。
            where: data,
            page: {
                curr: 1
            }
        });
        reloadData(data);
    });

    //监听行工具事件
    table.on('tool(data-table)', function(obj){
        var data = obj.data;
        if(obj.event === 'detail'){
            layer.open({
                type: 2,
                title: '金币明细',
                content: 'toCoinManage?height=900&userId='+data.userId,
                area: ['90%', '90%'],
                offset: ['5%', '5%']
            });
        }
    });

    /**
     * 获取查询数据
     * @returns {{host: jQuery, online: jQuery, keyword: (*|jQuery|Array|string|undefined), status: (*|jQuery|Array|string|undefined)}}
     */
    function getData() {
        var userId = $('#userId').val();

        return {'userId': userId};
    }

    /**
     * 重新渲染数据
     * @param data
     */
    function reloadData(data) {
        $('#userId').val(data.userId);
    }
});